home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Tools 4
/
Amiga Tools 4.iso
/
text+faqs
/
amiga-main-internet-list
/
amil
/
amil_search.rexx
next >
Wrap
OS/2 REXX Batch file
|
1996-02-26
|
3KB
|
164 lines
/*
**---------------------------------------
**
** AMIL_Search.rexx V0.1
**
** Search AMIL.guide for keywords
**
**---------------------------------------
**
** © 1995 Tassos Hadjithomaoglou
**
** $VER: AMIL_Search.rexx V0.1 (7-Oct-95)
**---------------------------------------
*/
OPTIONS RESULTS
TRUE=1
FALSE=0
/*
** Path for Viewer
** Enter here the full path of a AmigaGuide Viewer of your choice
*/
Viewer = 'SYS:Utilities/MultiView'
/*
** Check for argument, else ask for one
*/
PARSE ARG keyword
IF keyword = '' THEN
DO
SAY 'Please input word to search for : '
PARSE PULL keyword
IF keyword = '' THEN
DO
SAY 'No word was given !!!'
EXIT
END
END
SAY 'Searching for "'keyword'"...'
/*
** Check for AMIL.guide and open it
*/
bool1=OPEN(AMIL_file,'AMIL:AMIL.guide',R)
IF bool1 = FALSE THEN
DO
SAY 'The file "AMIL:AMIL.guide" cannot be found.'
SAY 'Please set your AMIL: assign correctly!!'
EXIT
END
/*
** Initialize variables
*/
counter = 0
nodeline = 0
keywordline = 0
nodename = ''
s = ''
/*
** Create the AMIL_Search.guide
*/
bool1=OPEN(Search_file,'T:AMIL_Search.guide',W)
WRITELN(Search_file,'@database AMIL_Search')
WRITELN(Search_file,'@node "Main" "AMIL_Search"')
WRITELN(Search_file,'')
WRITELN(Search_file,' The word "@{b}'keyword'@{ub}" was found in the following nodes :')
WRITELN(Search_file,'')
DO UNTIL EOF(AMIL_file) = TRUE
s = READLN(AMIL_file)
counter = counter + 1
IF LEFT(s,5) = '@node' THEN
DO
s1 = DELSTR(s,1,7)
nodename = DELSTR(s1,INDEX((s1),'"'))
nodeline = counter
END
IF (LEFT(s,1) ~= '@') | (LEFT(s,2) = '@{') THEN
DO
IF INDEX(UPPER(s),UPPER(keyword)) ~= 0 THEN
DO
keywordline = counter - nodeline - 2
s2 = ' @{"'nodename'" link "AMIL:AMIL.guide/'nodename'" 'keywordline'}'
/*
**----------------
** example link :
**-----------------------------
** @{"Author" link "Author" 0}
**-----------------------------
*/
WRITELN(Search_file,s2)
WRITELN(Search_file,' 's)
WRITELN(Search_file,COPIES('-',72))
END
END
END
WRITELN(Search_file,'')
WRITELN(Search_file,'@endnode')
/*
** Close both files
*/
bool1=CLOSE(AMIL_file)
bool1=CLOSE(Search_file)
/*
** Check for Viewer or MultiView/AmigaGuide
*/
bool1 = EXISTS(Viewer)
IF bool1 = FALSE THEN
DO
SAY Viewer 'wasn''t found.'
SAY 'Trying MultiView/AmigaGuide...'
bool1 = EXISTS('SYS:Utilities/MultiView')
IF bool1 = FALSE THEN
DO
bool1 = EXISTS('SYS:Utilities/AmigaGuide')
IF bool1 = FALSE THEN
DO
SAY 'MultiView/AmigaGuide weren''t found in SYS:Utilities !!!'
EXIT
END
ELSE
DO
Viewer = 'SYS:Utilities/AmigaGuide'
END
END
ELSE
DO
Viewer = 'SYS:Utilities/MultiView'
END
END
/*
** View the results from the search
*/
SAY 'Running 'Viewer'...'
ADDRESS COMMAND 'Run >NIL: <NIL: 'Viewer' T:AMIL_Search.guide'
EXIT 0
/*
** End of ARexx script
*/